package com.bestcem.xm.member.dao.mapper;

import com.bestcem.xm.member.entity.pojo.MemberQueryFieldDO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 联系人查询字段mapper
 *
 * @author yf.wang <yf.wang@idiaoyan.com>
 * @version V1.0
 * @date 2021/9/16
 */
@Mapper
public interface MemberQueryFieldMapper {

    /**
     * 根据 组织id 和联系人类型 获取联系人查询字段
     *
     * @param orgId
     * @param attribute
     * @return
     */
    MemberQueryFieldDO findOneByOrgIdAndAttribute(@Param("orgId") String orgId,
                                                  @Param("memberType") Integer attribute);

    /**
     * 创建联系人查询字段信息
     *
     * @param memberQueryField
     */
    void createMemberQueryField(MemberQueryFieldDO memberQueryField);

    /**
     * 批量创建联系人查询字段信息
     *
     * @param queryFieldDos 联系人查询字段信息集合
     */
    void batchCreate(List<MemberQueryFieldDO> queryFieldDos);

    /**
     * 更新联系人查询字段
     *
     * @param memberQueryField
     */
    void updateMemberQueryField(MemberQueryFieldDO memberQueryField);

    List<MemberQueryFieldDO> findAll(@Param("offset") int offset, @Param("limit") int batchSize);

    void updateBaseQueryField(@Param("id") String id, @Param("baseFields") String baseFields);
}
